home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / golf2.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1986-06-05  |  13.3 KB  |  366 lines

  1. 10  'Last Update - 7/17/82:AM:A.Vanchura
  2. 20  WIDTH 80:SCREEN 0,0,0:KEY OFF:LOCATE 1,1,0
  3. 30  COLOR 15,0,0:CLS:CLEAR 100
  4. 40  RANDOMIZE(VAL(RIGHT$(TIME$,2))):DEFSTR Z:DIM Z(10),A(10):GOSUB 2200
  5. 50  FOR A=1 TO 9:ON KEY(A) GOSUB 1380:KEY(A) ON:NEXT
  6. 60  ON KEY(10) GOSUB 2470
  7. 70  KEY(10) ON:DEF SEG:POKE 106,0
  8. 80  GOSUB 1210:COLOR 15,0:CLS:LOCATE 5,20:PRINT"What Is Your Name? "
  9. 90  LOCATE 23,18:PRINT"***** Enter Your Name And Strike Enter *****":LOCATE 5,38:PRINT" ";
  10. 100  GOSUB 3510:P$=" "+LEFT$(ZA,7)
  11. 110  LOCATE 7,20:PRINT"What Is Your Handicap "P$"? ";:LOCATE 23,16:PRINT"***** Enter Your Handicap And Strike Enter *****":LOCATE 7,20:PRINT"What Is Your Handicap "P$"? ";:GOSUB 3510:A=VAL(ZA)
  12. 120  IF A<0 OR A>30 THEN CLS:LOCATE 4,16:PRINT"Please Enter An Amount Between 0 And 30 Inclusive":GOTO 110
  13. 130  CLS:IF A<4 THEN LOCATE 4,25:PRINT"You Should Be On The Tour!!
  14. 140  LOCATE 6,20:PRINT"Difficulties At Golf Include The Following:
  15. 150  COLOR 10,0
  16. 160  LOCATE 7,30:PRINT"0 = HOOK                  "
  17. 170  LOCATE 8,30:PRINT"1 = SLICE                 "
  18. 180  LOCATE 9,30:PRINT"2 = POOR DISTANCE         "
  19. 190  LOCATE 10,30:PRINT"3 = PERFECT PLAYER        "
  20. 200  LOCATE 11,30:PRINT"4 = SAND TRAP PLAY        "
  21. 210  LOCATE 12,30:PRINT"5 = POOR PUTTING          "
  22. 220  LOCATE 14,30:COLOR 15,0:PRINT"Pick One:";:COLOR 3,0
  23. 230  GOSUB 1170:IF Z<"0" OR Z>"5" THEN GOSUB 1180:GOTO 220 ELSE B=VAL(Z)
  24. 240  HOLE=1:GOSUB 1220
  25. 250  IF HOLE=19 THEN GOSUB 1610:RUN ELSE GOSUB 1740
  26. 260  GOSUB 1300
  27. 270  B1=1
  28. 280  KEY(1) ON:Z1="":GOSUB 1170:IF Z>"0" AND Z<="9" THEN F=VAL(Z) ELSE IF Z="P" OR Z="p" THEN Z1=Z ELSE 280
  29. 290  FOR XX=14 TO 17:LOCATE XX,1:PRINT SPC(40);:NEXT
  30. 300  LOCATE 14,10:PRINT Z;:IF Z1="P" OR Z1="p" THEN 320
  31. 310  LOCATE 16,2:COLOR 15:PRINT"Choose `I' For Iron Or `W' For Wood":COLOR 7:LOCATE 14,11
  32. 320  GOSUB 1170
  33. 330  IF Z1="P" OR Z1="p" THEN 360
  34. 340  IF Z="W" OR Z="w" THEN PRINT" WOOD";:GOTO 380
  35. 350  IF Z="I" OR Z="i" THEN PRINT" IRON";:F=F+9.5:GOTO 380
  36. 360  IF Z="W" OR Z="w" THEN PRINT CHR$(29)"PITCHING WEDGE";:F=20:GOTO 380
  37. 370  GOSUB 1350:GOTO 280
  38. 380  IF F>4 AND (Z="w" OR Z="W") AND (Z1<>"p" AND Z1<>"P") THEN GOSUB 1350:GOTO 280
  39. 390  IF F<8 THEN GOSUB 1200:GOTO 510
  40. 400  LOCATE 16,1:PRINT SPC(40):LOCATE 16,1:COLOR 15:PRINT"Select % Of Swing  <from 11 to 100>";:Z2="":COLOR 7:LOCATE 14,25
  41. 410  GOSUB 1170
  42. 420  IF Z=CHR$(8) THEN 450
  43. 430  IF LEN(Z)>1 THEN IF MID$(Z,2,1)=CHR$(75) THEN 450 ELSE 410
  44. 440  IF Z<"0" OR Z>"9" THEN 410 ELSE 470
  45. 450  IF LEN(Z2)<1 THEN 410
  46. 460  PRINT CHR$(29)" "CHR$(29);:Z2=LEFT$(Z2,LEN(Z2)-1):GOTO 410
  47. 470  PRINT Z;:Z2=Z2+Z:IF LEN(Z2)>1 THEN SWING=VAL(Z2) ELSE 410
  48. 480  IF SWING=10 THEN PRINT"0 %":SWING=SWING*10 ELSE PRINT" %"
  49. 490  IF SWING <1 OR SWING >100 THEN LOCATE 16,1:PRINT SPC(40):GOSUB 1350:GOTO 280
  50. 500  GOSUB 1200:SWING=SWING/100:IF B1=5 THEN 660 ELSE F=F-5:GOTO 530
  51. 510  SWING=1:IF B1=2 OR B1=3 THEN 710
  52. 520  IF F=1 AND STK>0 AND PENALTY=0 THEN 740
  53. 530  DIST=INT(((30-A)*2.5+230-((30-A)*0.25+20)*F/2)+(RND*20)):DIST=INT(DIST*SWING)
  54. 540  OF=(RND/0.6)*(2*A+16)*ABS(TAN(DIST*0.003)):GRN=INT(SQR(OF^2+ABS(YARDS-DIST)^2))
  55. 550  IF YARDS-DIST<0 THEN IF GRN>=20 THEN LOCATE 8,1:COLOR 15:PRINT"Too Much Club, You're Over The Green":COLOR 7:LOCATE 1,1
  56. 560  HOLD=YARDS:YARDS=GRN
  57. 570  IF GRN>25 THEN 590 ELSE IF GRN>15 THEN 650 ELSE IF GRN>1 THEN 690
  58. 580  GRN=0:GOTO 750
  59. 590  IF OF<DIFF+(A*1.1)-(SWING*20) THEN B1=1:GOTO 640 ELSE LOCATE 1,1:ON B+1 GOTO 610,620
  60. 600  GOTO 640
  61. 610  PRINT"You Hooked ";:B1=LEFT:GOTO 630
  62. 620  PRINT"YOU Sliced ";:B1=RIGHT
  63. 630  IF OF>50 THEN PRINT"Outa SIGHT.
  64. 640  GOSUB 1390:GOTO 280
  65. 650  B1=5:GOSUB 1390:GOTO 280
  66. 660  LOCATE 1,1:IF B=4 THEN X=(RND*100-A) ELSE X=(RND*150-A)
  67. 670  IF X<13 THEN PRINT"You Dubbed It. Shot Still In The Trap." ELSE 690
  68. 680  B1=5:DIST=0:GOSUB 1390:GOSUB 1350:GOTO 280
  69. 690  B1=1:GRN=INT(GRN*(RND*4))
  70. 700  GOTO 750
  71. 710  LOCATE 5,1:X=INT(RND*50-A):IF X<18 THEN IF B1=3 THEN PRINT"You Hit A Tree. Try Again.":GOTO 730 ELSE 720 ELSE 530
  72. 720  PRINT"You Dubbed It.":PRINT"What Did You Say Your Handicap Was ?
  73. 730  DIST=INT(RND*35):GOTO 540
  74. 740  LOCATE 5,1:PRINT"Where Did You Learn To Play Golf, HUH??":PRINT"You Don`t Hit A Driver In The Fairway":GOTO 730
  75. 750  FF=1:CY=2:CLS:COLOR 2,0:LOCATE 23,1:PRINT STRING$(78,176);:COLOR 3:LOCATE 23,40:PRINT CHR$(32);
  76. 760  Z=INKEY$:GOTO 940
  77. 770  Z=INKEY$:LOCATE 1,21:COLOR 0,7:PRINT" You're On The Green"GRN"Feet From The Pin "
  78. 780  LOCATE 25,26:PRINT"Strike <F10> To Leave This Game";
  79. 790  LOCATE 3,38:PRINT" Par"PAR
  80. 800  LOCATE 5,36:PRINT" Strokes"STK
  81. 810  COLOR 15,0:LOCATE 9,28:PRINT" Strike Space Bar To Putt "
  82. 820  LOCATE 8,22:PRINT" Enter A Putt Factor Between .5 and 10  "
  83. 830  LOCATE 10,40:Z2=""
  84. 840  GOSUB 1170:IF Z=CHR$(32) OR Z=CHR$(13) THEN PUTT=VAL(Z2):GOTO 900
  85. 850  IF LEN(Z)>1 THEN IF MID$(Z,2,1)=CHR$(75) THEN Z=CHR$(8) ELSE 840
  86. 860  IF LEN(Z2)<1 AND Z=CHR$(8) THEN 840
  87. 870  IF Z=CHR$(8) THEN PRINT CHR$(29)" "CHR$(29);:Z2=LEFT$(Z2,LEN(Z2)-1):GOTO 840
  88. 880  IF (Z<"0" OR Z>"9") AND Z<>"." THEN 840
  89. 890  LOCATE 10:PRINT Z;:Z2=Z2+Z:GOTO 840
  90. 900  LOCATE 10,30:PRINT SPC(30):LOCATE 5,43:PRINT"       ":IF PUTT<0 OR PUTT>10 THEN 820
  91. 910  HP=HP+1
  92. 920  IF HP>6 OR STK-1>(A*0.75)+2 THEN 970
  93. 930  IF B=5 THEN GRN=GRN-PUTT*(4+1*RND)+1 ELSE GRN=GRN-PUTT*(4+2*RND)+1.5
  94. 940  IF GRN<-40 OR GRN>40 THEN GRN=40
  95. 950  IF GRN<-1.4 THEN IF FF=-1 THEN CX=CX+GRN*2:GOTO 980 ELSE CX=40-GRN:GOTO 980
  96. 960  IF GRN>1.4 THEN CX=40-GRN:GOTO 980
  97. 970  GRN=0:CX=40
  98. 980  STK=STK+1
  99. 990  IF CY<2 THEN CY=2
  100. 1000  IF CX>79 THEN CX=77
  101. 1010  GRN=INT(GRN+0.4)
  102. 1020  LOCATE 22,CY-1:PRINT"   ";
  103. 1030  IF CX<2 THEN CX=3
  104. 1040  COLOR 31:FOR CZ=CY TO CX-1 STEP FF:IF FF=1 THEN GOTO 1060
  105. 1050  LOCATE 22,CZ:PRINT CHR$(32);:LOCATE 22,CZ-1:PRINT CHR$(2);:GOTO 1070
  106. 1060  LOCATE 22,CZ-1:PRINT CHR$(32);:LOCATE 22,CZ:PRINT CHR$(32);:LOCATE 22,CZ+1:PRINT CHR$(2);
  107. 1070  NEXT:COLOR 7
  108. 1080  IF GRN<0 THEN FF=-FF:GRN=-GRN
  109. 1090  IF GRN=0 THEN LOCATE 22,1:PRINT SPC(39);:LOCATE ,41:PRINT SPC(39):LOCATE 23,40:PRINT CHR$(2);
  110. 1100  CY=CX:GRN=INT(GRN)
  111. 1110  COLOR 12
  112. 1120  LOCATE 22,40:PRINT"LOCATE";:LOCATE 21,40:PRINT"OPEN";:LOCATE 20,40:PRINT"OPEN";:LOCATE 19,40:PRINT"OPEN";:LOCATE 18,40:PRINT"TO";"XORXORXORXOR";:LOCATE 17,40:PRINT"KEY";"XORXORXORXOR";
  113. 1130  COLOR 7
  114. 1140  IF GRN<>0 THEN 770
  115. 1150  GOSUB 1530
  116. 1160  GOSUB 1430:GOTO 250
  117. 1170  Z=INKEY$:IF Z="" THEN RANDOMIZE VAL(RIGHT$(TIME$,2)):GOTO 1170 ELSE RETURN
  118. 1180  LOCATE 20,23:PRINT"That Is Not A Choice. Please Try Again."
  119. 1190  FOR XX=1 TO 2000:NEXT:LOCATE 20,1:PRINT SPC(79):RETURN
  120. 1200  FOR XX=9 TO 1 STEP -1:LOCATE XX,1:PRINT SPC(40):NEXT:RETURN
  121. 1210  FOR A=1 TO 7:READ Z(A):NEXT:RETURN
  122. 1220  CLS:COLOR 0,7:LOCATE 10,25:PRINT" Please Pick A Course To Play "
  123. 1230  LOCATE 12,15:PRINT" 1 Amateur Green Grass Country Club     <Rating 65> "
  124. 1240  LOCATE 13,15:PRINT" 2 Down Hill Country Club               <Rating 69> "
  125. 1250  LOCATE 14,15:PRINT" 3 Swamp Grass USA                      <Rating 72> "
  126. 1255  COLOR 4,0:LOCATE 16,1:PRINT "                   ASTERISK (*) IS THE BALL AT BEGINNING TEE..."
  127. 1260  COLOR 7,0
  128. 1270  GOSUB 1170:IF Z<"1" OR Z>"3" THEN GOSUB 1180:GOTO 1270 ELSE C=VAL(Z)
  129. 1280  IF C=1 THEN RETURN
  130. 1290  FOR D=1 TO ((C-1)*126):READ E:NEXT:RETURN
  131. 1300  LOCATE 20,1:COLOR 0,7:PRINT P$" This Is Your Bag Of Clubs: "
  132. 1310  PRINT TAB(5)"Woods 1 thru 4"TAB(20)"300 to 250 Yards "
  133. 1320  PRINT TAB(5)"Irons 1 thru 9"TAB(20)"250 to   0 Yards "
  134. 1330  PRINT TAB(5)"Pitching Wedge"TAB(20)"100 to   0 Yards ":COLOR 7,0
  135. 1340  COLOR 0,7:LOCATE 25,25:PRINT" Strike <F10> To Leave This Game ";:COLOR 3,0
  136. 1350  COLOR 15:LOCATE 14,5:PRINT"Choose Your Club.              "
  137. 1360  LOCATE 15,5:PRINT"1-9 For Irons, 1-4 For Woods,
  138. 1370  LOCATE 16,1:PRINT SPC(40):LOCATE 16,5:PRINT"Or PW For Pitching Wedge.":COLOR 7
  139. 1380  RETURN
  140. 1390  LOCATE 2,1:STK=STK+1:IF B1>5 THEN 1420
  141. 1400  PRINT"Shot Went"DIST"Yards.":PRINT"It`s";:COLOR 15,0:PRINT GRN;:COLOR 3,0:PRINT"Yards From The Green
  142. 1410  PRINT"And Is"INT(OF)"Yards Off Line In "Z(B1):GOSUB 1350:RETURN
  143. 1420  PRINT"Shot Went Into "Z(B1):STK=STK+1:PRINT"Penalty Stroke Accessed. ":PRINT"Hit From Same Location":PENALTY=1:J=J+1:B1=1:YARDS=HOLD:DIST=0:OF=0:GRN=HOLD:GOTO 1390
  144. 1430  PS=0:HP=0:S=S+1:J=0
  145. 1440  FOR XX=9 TO 1 STEP -1:LOCATE XX,1:PRINT SPC(70):NEXT
  146. 1450  STKS=STKS+STK:HOLE=HOLE+1
  147. 1460  LOCATE 1,28:PRINT"Your Score On Hole";HOLE-1;"Was"STK
  148. 1470  LOCATE 3,30:PRINT"Total Par So Far Is"TOTAL
  149. 1480  LOCATE 4,29:PRINT"Your Current Score Is"STKS
  150. 1490  STK=0
  151. 1500  LOCATE 25,25:COLOR 15,0:PRINT"    Strike Any Key To Continue  ";
  152. 1510  COLOR 3,0:GOSUB 1170
  153. 1520  RETURN
  154. 1530  LOCATE 10,15:COLOR 15:IF STK=PAR+2 THEN DOUBLEBOGEY=DOUBLEBOGEY+1:PRINT"  A Double Bogey. Let The Next Foursome Play Through ":FOR X=1 TO 8:SOUND 100,1:SOUND 50,1:NEXT
  155. 1540  IF STK=PAR+1 THEN BOGEY=BOGEY+1:PRINT"      A Bogey. Maybe The Next Hole Will Be Better.":FOR X=1 TO 5:SOUND 500,2:SOUND 100,2:NEXT
  156. 1550  IF STK=PAR THEN PARS=PARS+1:PRINT"            A Par. Keep Up The Good Work.":SOUND 2000,15
  157. 1560  IF STK>PAR+2 THEN BAD=BAD+1:PRINT"       Maybe You Had Better Get Your Money Back.":SOUND 100,19
  158. 1570  IF STK=PAR-1 THEN BIRDIE=BIRDIE+1:PRINT"                Alright ! A Birdie.":FOR X=1 TO 5:SOUND 2000,1:SOUND 1000,1:SOUND 2000,1:SOUND 1000,1:NEXT
  159. 1580  IF STK=PAR-2 THEN IF PAR=3 THEN HOLEINONE=HOLEINONE+1:PRINT"A Hole In One !!!!":FOR X=1 TO 7:SOUND 2000,1:SOUND 1000,1:NEXT ELSE EAGLE=EAGLE+1:PRINT"      An Eagle. WOW !! You Should Be On The Tour.":FOR X=1 TO 7:SOUND 3000,1:SOUND 500,1:NEXT
  160. 1590  IF STK=PAR-3 THEN DOUEAG=DOUEAG+1:PRINT"YEE-HAA!!! A Double Eagle !!! Your Name Must Be Jack Nichalas":FOR XX=1 TO 7:SOUND 3000,1:SOUND 1000,1:SOUND 5000,2:SOUND 500,1:NEXT
  161. 1600  COLOR 7:RETURN
  162. 1610  CLS:COLOR 2,0:LOCATE 1,27:PRINT"Your Score Is As Follows:
  163. 1620  LOCATE 3,30:PRINT BAD"Awful Shots
  164. 1630  LOCATE 4,30:PRINT DOUBLEBOGEY"Double Bogeys
  165. 1640  LOCATE 5,30:PRINT BOGEY"Bogeys
  166. 1650  LOCATE 6,30:PRINT PARS"Pars
  167. 1660  LOCATE 7,30:PRINT BIRDIE"Birdies
  168. 1670  LOCATE 8,30:PRINT EAGLE"Eagles
  169. 1680  LOCATE 9,30:PRINT DOUEAG"Double Eagle
  170. 1690  LOCATE 10,30:PRINT HOLEINONE"Hole In One
  171. 1700  LOCATE 12,27:PRINT"Par For This Course Is"TOTAL
  172. 1710  LOCATE 13,31:PRINT"Your Score Was"STKS
  173. 1720  COLOR 0,7:LOCATE 15,23:PRINT" Would You Like To Play Again? <Y/N> ";:COLOR 7,0
  174. 1730  GOSUB 1170:IF Z="Y" OR Z="y" THEN RETURN ELSE IF Z<>"N" AND Z<>"n" THEN 1730 ELSE 2490
  175. 1740  CLS:READ PAR,YARDS,LEFT,RIGHT,DIFF,LNG,FAC
  176. 1750  LNG=LNG+4
  177. 1760  GOSUB 2510
  178. 1770  LOCATE 1,1:PRINT CHR$(201)STRING$(26,205)CHR$(187)
  179. 1780  LOCATE 2,1:PRINT":    You Are At No."HOLE"Tee":LOCATE 2,28:PRINT":"
  180. 1790  LOCATE 3,1:PRINT":"SPC(5)"Distance";:COLOR 15,0:PRINT YARDS;:COLOR 3,0:PRINT"Yards":LOCATE 3,28:PRINT":"
  181. 1800  LOCATE 4,1:PRINT":"SPC(9)"Par"PAR:LOCATE 4,28:PRINT":"
  182. 1810  LOCATE 5,1:PRINT CHR$(200)STRING$(26,205)CHR$(188):PRINT
  183. 1820  PRINT"On Your Left Is "Z(LEFT)
  184. 1830  PRINT"On Your Right Is "Z(RIGHT)
  185. 1840  TOTAL=TOTAL+PAR:RETURN
  186. 1850  IF INKEY$<>"" THEN 1850 ELSE 1350
  187. 1860  DATA Fairway,Deep Rough,Trees,Adjacent Fairway,Sand Trap,A Big Lake,Out Of Bounds
  188. 1870  DATA 5,501,2,3,60,6,3,3,165,2,6,60,6,1,5,475,3,3,50,7,3,4,289,3,3,35,8,2,4,340,7,2,80,6,2
  189. 1880  DATA 4,365,7,6,80,4,2,3,185,7,2,80,4,1,4,330,7,2,80,6,2,4,412,7,2,80,2,2
  190. 1890  DATA 4,440,7,3,80,8,3,4,420,7,4,80,9,3,3,145,2,6,85,8,1,5,535,7,2,80,5,3,4,340,3,3,45,5,2
  191. 1900  DATA 4,380,6,6,85,4,2,3,165,3,3,34,6,1,4,410,7,2,85,2,2,5,450,3,3,45,8,3
  192. 1910  DATA 4,412,6,6,80,2,2,4,446,3,3,25,8,2,5,630,3,3,35,2,3,3,210,6,6,75,2,1,4,315,3,1,40,7,2
  193. 1920  DATA 4,454,3,6,85,7,3,3,154,6,6,85,7,1,5,625,3,6,85,2,3,4,444,3,3,25,8,3
  194. 1930  DATA 3,215,1,7,85,12,2
  195. 1940  DATA 5,556,2,2,30,4,3
  196. 1950  DATA 4,413,3,6,85,2,2
  197. 1960  DATA 4,450,4,4,25,8,3
  198. 1970  DATA 4,465,3,7,85,7,3
  199. 1980  DATA 5,630,2,2,15,2,3
  200. 1990  DATA 3,147,6,6,85,8,1
  201. 2000  DATA 4,432,2,3,35,8,3
  202. 2010  DATA 4,472,7,6,85,7,3
  203. 2020  DATA 5,628,3,3,10,2,3
  204. 2030  DATA 3,235,6,6,75,10,2
  205. 2040  DATA 4,531,3,6,65,5,3
  206. 2050  DATA 4,465,2,7,65,7,3
  207. 2060  DATA 4,543,6,2,60,4,3
  208. 2070  DATA 3,312,6,6,85,7,2
  209. 2080  DATA 5,622,2,3,25,2,3
  210. 2090  DATA 4,476,2,2,35,7,3
  211. 2100  DATA 4,465,3,2,40,7,3
  212. 2110  DATA 3,197,6,3,75,3,1
  213. 2120  DATA 4,345,6,2,70,5,2
  214. 2130  DATA 5,623,3,2,30,2,3
  215. 2140  DATA 4,456,2,3,35,7,3
  216. 2150  DATA 4,398,3,3,35,3,2
  217. 2160  DATA 3,300,6,7,75,8,2
  218. 2170  DATA 5,621,2,3,45,2,3
  219. 2180  DATA 4,467,3,3,44,7,3
  220. 2190  DATA 4,489,2,2,32,6,3
  221. 2200  FOR XX=2 TO 22
  222. 2210     LOCATE XX,1:PRINT CHR$(179);
  223. 2220     LOCATE XX,80:PRINT CHR$(179);
  224. 2230  NEXT
  225. 2240  LOCATE 1,1:PRINT CHR$(218)STRING$(78,196)CHR$(191)
  226. 2250  LOCATE 23,1:PRINT CHR$(192)STRING$(78,196)CHR$(217);
  227. 2260  LOCATE 2,2:COLOR 3,0
  228. 2270  COLOR 15,0:PRINT  TAB(33)"P C   G O L F"
  229. 2280  LOCATE 10,23,0:PRINT"Would You Like Instructions? <Y/N>";:COLOR 3,0
  230. 2290  GOSUB 1170:IF Z="N" OR Z="n" THEN RETURN ELSE IF Z<>"Y" AND Z<>"y" THEN 2290
  231. 2300  LOCATE 4,13:PRINT"Welcome to the first tee.  When asked,  you will need to
  232. 2310  LOCATE 5,13:PRINT"tell the starter your handicap (1 to 30) and indicate if
  233. 2320  LOCATE 6,13:PRINT"your game is affected by any of the problem areas listed.
  234. 2330  LOCATE 7,13:PRINT"It will be to your benefit to be honest in answering, as
  235. 2340  LOCATE 8,13:PRINT"it will emmulate your golfing abilities.
  236. 2350  LOCATE 10,13:PRINT"Before each shot, the scene will be set for you. Respond
  237. 2360  LOCATE 11,13:PRINT"by  choosing the right club from your bag and indicating
  238. 2370  LOCATE 12,13:PRINT"how hard you wish to swing   11 to 100 % .
  239. 2380  LOCATE 13,13:PRINT"Wood shots are always full hits.
  240. 2390  LOCATE 15,13:PRINT"The  game is  programmed to mix  pre-set  club  distance
  241. 2400  LOCATE 16,13:PRINT"with your  indicated ` % ' of full swing to produce your
  242. 2410  LOCATE 17,13:PRINT"results.
  243. 2420  LOCATE 19,13:PRINT"Obviously, the more you  play  and  learn the subtleties
  244. 2430  LOCATE 20,13:PRINT"of `club swing %,' the  better  you  will score.
  245. 2440  LOCATE 22,18:PRINT"WHAT? YOU THOUGHT THIS WAS GOING TO BE EASY?
  246. 2450  LOCATE 25,27:COLOR 15,0:PRINT"Strike Any Key To Continue";
  247. 2460  GOTO 1170
  248. 2470  KEY(10) OFF:COLOR 15,0:LOCATE 25,20:PRINT"Do You Wish To Leave This Game? <Y/N>    ";:COLOR 3,O
  249. 2480  GOSUB 1170:IF Z="N" OR Z="n" THEN LOCATE 25,1:PRINT SPC(70);:LOCATE 25,22:COLOR 0,7:PRINT"Strike <F10> To Leave This Game";:COLOR 3,0:KEY(10) ON:RETURN ELSE IF Z<>"Y" AND Z<>"y" THEN 2480
  250. 2490  CLS:LOCATE 12,27:COLOR 15:PRINT"Thank You For Playing
  251. 2500  COLOR 7:END
  252. 2510  CLS
  253. 2520  LOCATE 1,41:PRINT CHR$(218)STRING$(37,196)CHR$(191)
  254. 2530  FOR E=2 TO 22
  255. 2540     LOCATE E,41:PRINT CHR$(179);:LOCATE E,79:PRINT CHR$(179)
  256. 2550  NEXT
  257. 2560  LOCATE 23,41:PRINT CHR$(192)STRING$(17,196)CHR$(217);:COLOR 4,0:PRINT CHR$(42);:COLOR 7,0:PRINT CHR$(192)STRING$(17,196)CHR$(217)
  258. 2570  LOCATE 22,59:COLOR 14,0:PRINT"<0xDF!><0xDF!><0xDF!>"
  259. 2580  LOCATE 21,58:PRINT"CSRLINCSRLIN";:COLOR 12,0:PRINT CHR$(24);:COLOR 14,0:PRINT "CSRLINCSRLIN":COLOR 7,0
  260. 2590  LOCATE 20,58:PRINT"\   /"
  261. 2600  LOCATE 19,57:PRINT"\     /"
  262. 2610  LOCATE 18,56:PRINT"\       /"
  263. 2620  FOR E=17 TO LNG STEP -1
  264. 2630     LOCATE E,55:PRINT"CALL":LOCATE E,65:PRINT"CALL"
  265. 2640  NEXT
  266. 2650  LOCATE LNG-1,56:PRINT"/       \"
  267. 2660  COLOR 10,0:LOCATE LNG-2,57:PRINT" WHILEWHILEWHILEWHILEWHILE "
  268. 2670  LOCATE LNG-3,58:PRINT"GREEN":COLOR 3,0
  269. 2680  ON RIGHT-1 GOSUB 2710,2800,2890,2900,3010,3070
  270. 2690  ON LEFT-1 GOSUB 3110,3200,3290,3300,3410,3470
  271. 2700  RETURN
  272. 2710  COLOR 6,0:LOCATE 20,62:PRINT CHR$(177)
  273. 2720  LOCATE 19,63:PRINT"LINELINELINE"
  274. 2730  LOCATE 18,64:PRINT"LINELINELINELINE"
  275. 2740  FOR E=17 TO LNG+1 STEP-1
  276. 2750     LOCATE E,65:PRINT"LINELINELINELINELINE"
  277. 2760  NEXT
  278. 2770  LOCATE LNG,65:PRINT"LINELINELINELINE"
  279. 2780  LOCATE LNG-1,64:PRINT"LINELINELINELINE"
  280. 2790  COLOR 3,0:RETURN
  281. 2800  COLOR 2,0:LOCATE 20,62:PRINT CHR$(5)
  282. 2810  LOCATE 19,63:PRINT STRING$(3,5)
  283. 2820  LOCATE 18,64:PRINT STRING$(4,5)
  284. 2830  FOR E=17 TO LNG+1 STEP-1
  285. 2840     LOCATE E,65:PRINT STRING$(4,5)
  286. 2850  NEXT
  287. 2860  LOCATE LNG,65:PRINT STRING$(4,5)
  288. 2870  LOCATE LNG-1,64:PRINT STRING$(4,5)
  289. 2880  COLOR 3,0:RETURN
  290. 2890  RETURN
  291. 2900  COLOR 14,0:LOCATE 17,65:PRINT"[[[["
  292. 2910  LOCATE 16,65:PRINT"[[[["
  293. 2920  LOCATE 15,65:PRINT"[[[["
  294. 2930  LOCATE 14,65:PRINT"[[[["
  295. 2940  IF LNG>8 THEN 3000
  296. 2950  LOCATE 11,65:PRINT"[[[["
  297. 2960  LOCATE 10,65:PRINT"[[[["
  298. 2970  LOCATE 9,65:PRINT"[[[["
  299. 2980  LOCATE 8,65:PRINT"[[[["
  300. 2990  LOCATE 7,65:PRINT"[[[["
  301. 3000  COLOR 3,0:RETURN
  302. 3010  COLOR 1,0:FOR E=16 TO LNG+1 STEP-1
  303. 3020     LOCATE E,64:PRINT STRING$(7,247)
  304. 3030  NEXT
  305. 3040  COLOR 6,0:LOCATE 17,65:PRINT"WENDWENDWENDWENDWEND"
  306. 3050  LOCATE LNG,65:PRINT"WENDWENDWENDWENDWEND"
  307. 3060  RETURN
  308. 3070  X=0:Z="OUT OF BOUNDS":FOR E=7 TO 21
  309. 3080  X=X+1:LOCATE E,70:COLOR 4,0:PRINT MID$(Z,X,1)
  310. 3090  NEXT
  311. 3095  COLOR 3,0
  312. 3100  RETURN
  313. 3110  COLOR 6,0:LOCATE 20,58:PRINT CHR$(177)
  314. 3120  LOCATE 19,55:PRINT "LINELINELINE"
  315. 3130  LOCATE 18,53:PRINT "LINELINELINELINE"
  316. 3140  FOR E=17 TO LNG+1 STEP-1
  317. 3150     LOCATE E,51:PRINT "LINELINELINELINELINE"
  318. 3160  NEXT
  319. 3170  LOCATE LNG,53:PRINT "LINELINELINELINE"
  320. 3180  LOCATE LNG-1,54:PRINT "LINELINELINELINE"
  321. 3190  COLOR 3,0:RETURN
  322. 3200  COLOR 2,0:LOCATE 20,58:PRINT CHR$(5)
  323. 3210  LOCATE 19,55:PRINT STRING$(3,5)
  324. 3220  LOCATE 18,53:PRINT STRING$(4,5)
  325. 3230  FOR E=17 TO LNG+1 STEP-1
  326. 3240     LOCATE E,52:PRINT STRING$(4,5)
  327. 3250  NEXT
  328. 3260  LOCATE LNG,52:PRINT STRING$(4,5)
  329. 3270  LOCATE LNG-1,53:PRINT STRING$(4,5)
  330. 3280  COLOR 3,0:RETURN
  331. 3290  RETURN
  332. 3300  COLOR 15,0:LOCATE 17,54:PRINT"[[[["
  333. 3310  LOCATE 16,54:PRINT"[[[["
  334. 3320  LOCATE 15,54:PRINT"[[[["
  335. 3330  LOCATE 14,54:PRINT"[[[["
  336. 3340  IF LNG>8 THEN 3000
  337. 3350  LOCATE 11,54:PRINT"[[[["
  338. 3360  LOCATE 10,54:PRINT"[[[["
  339. 3370  LOCATE 9,54:PRINT"[[[["
  340. 3380  LOCATE 8,54:PRINT"[[[["
  341. 3390  LOCATE 7,53:PRINT"[[[["
  342. 3400  COLOR 3,0:RETURN
  343. 3410  COLOR 1,0:FOR E=16 TO LNG+1 STEP-1
  344. 3420     LOCATE E,50:PRINT STRING$(7,247)
  345. 3430  NEXT
  346. 3440  COLOR 6,0:LOCATE 17,51:PRINT"WENDWENDWENDWENDWEND"
  347. 3450  LOCATE LNG,51:PRINT"WENDWENDWENDWENDWEND"
  348. 3455  COLOR 3,0
  349. 3460  RETURN
  350. 3470  X=0:Z="OUT OF BOUNDS":FOR E=7 TO 21
  351. 3480  X=X+1:LOCATE E,50:COLOR 4,0:PRINT MID$(Z,X,1)
  352. 3490  NEXT
  353. 3495  COLOR 3,0
  354. 3500  RETURN
  355. 3510  ZH="":DEF SEG:POKE 106,0:IF INKEY$<>"" THEN 3510
  356. 3520  ZI=INKEY$:IF ZI="" THEN 3520
  357. 3530  IF ZI=CHR$(13) THEN ZA=SPACE$(8):LSET ZA=ZH:RETURN
  358. 3540  IF ZI=CHR$(8) THEN 3600
  359. 3550  IF LEN(ZI)>1 THEN IF RIGHT$(ZI,1)=CHR$(75) THEN 3600 ELSE 3520
  360. 3560  IF LEN(ZH)>10 THEN 3520
  361. 3570  IF ZI<"a" OR ZI>"z" THEN 3590
  362. 3580  ZI=CHR$(ASC(ZI)-32)
  363. 3590  ZH=ZH+ZI:PRINT ZI;:GOTO 3520
  364. 3600  IF LEN(ZH)<1 THEN 3520
  365. 3610  PRINT CHR$(29)" "CHR$(29);:ZH=LEFT$(ZH,LEN(ZH)-1):GOTO 3520
  366.